package com.atguigu.guli.etl.util;

import org.apache.zookeeper.server.quorum.Leader;

/**
 * @ClassName EtlUtil
 * @DeScription etl数据清洗工具类
 * @Author 剧情再美终是戏
 * @Date 2019/11/30 9:32
 * @Version 1.0
 **/
public class EtlUtil {

    private EtlUtil() {
    }

    /**
     * 对map的输入内容进行清洗
     *
     * @param value 输入内容
     * @return java.lang.String
     * @Author 剧情再美终是戏
     * @Date 2019/11/30
     * @Version 1.0
     * @DES 1、长度少于9的过滤
     * 2、将分类中的空格去除
     * 3、将分类和相关视频id集合中的分隔符统一为&
     **/
    public static String parse(String value) {
        if (null == value) {
            return null;
        }

        String[] split = value.split("\t");

        // 1、长度少于9的过滤
        if (split.length < 9) {
            return null;
        }

        // 2、将分类中的空格去除
        split[3] = split[3].replace(" ", "");

        // 3、将分类和相关视频id集合中的分隔符统一为&，并将结果写出
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < split.length; i++) {
            if (i < 9) {
                sb.append(split[i] + "\t");
            } else {
                sb.append(split[i]);
                if (i != split.length - 1) {
                    sb.append("&");
                }
            }
        }
        return sb.toString();
    }
}
